﻿/*
 * Created by SharpDevelop.
 * User: Администратор
 * Date: 28.03.2011
 * Time: 11:31
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.IO;

namespace Video.FLV
{
	/// <summary>
	/// Description of Struct.
	/// </summary>
	public struct FLVHeader
	{
		public byte Signature1;
		public byte Signature2;
		public byte Signature3;
		public byte Version;
		public byte TypeFlags;
		public UInt32 DataOffset;
	}
	
	public struct FLVBody{
		public uint PreviousTagSize;
		public FLVTag FlvTag;
	}
	
	public struct FLVTag{
		public byte TagType;
		public uint DataSize; //always 3 byte (24 bit)
		public uint Timestamp; //always 3 byte (24 bit)
		public byte TimestampExtended;
		public uint StreamID; //always 3 byte (24 bit)
		public FLVAudioData AudioData;
		public FLVVideoData VideoData;
	}
	
	public struct FLVAudioData{
		//TODO Implement
	}
	
	public struct FLVVideoData{
		public byte FrameType;
		public byte CodecID;
		public Stream VideoData;
	}
	
	public class H263VideoPacket{
		public ushort PictrureStartCode; //UB
	}
	
}
